/**
 * 
 */
package com.ipartek.pruebas.bean;

import com.ipartek.pruebas.interfaces.DriveableP2;

/**
 * @author practicas2
 *
 */
public class AutomobilP2 extends VehiculoP2 implements DriveableP2, Comparable<AutomobilP2>{

	
	String matricula;
	
	/**
	 * Constructor vacio
	 */
	public AutomobilP2() 
	{

	}

	/**
	 * Constructor con parametros
	 * @param marca	Marca del automobil
	 * @param modelo	Modelo del automobil
	 * @param potencia	Potencial del automobil
	 * @param traccion	Traccion del automobil
	 */
	public AutomobilP2(String marca, String modelo, int potencia,
			boolean traccion, String matricula) {
		super(marca, modelo, potencia, traccion);
		this.matricula = matricula;
	}

	/* (non-Javadoc)
	 * @see com.ipartek.pruebas.interfaces.AsegurableP2#renovarSeguro(java.lang.String)
	 */
	@Override
	public int renovarSeguro(String Matricula) {
		// TODO Auto-generated method stub
		return 0;
	}

	/* (non-Javadoc)
	 * @see com.ipartek.pruebas.interfaces.DriveableP2#startEngine()
	 */
	@Override
	public boolean startEngine() {
		// TODO Auto-generated method stub
		System.out.println("Has arrancado el automobil");
		return false;
	}

	/* (non-Javadoc)
	 * @see com.ipartek.pruebas.interfaces.DriveableP2#stopEngine()
	 */
	@Override
	public void stopEngine() {
		// TODO Auto-generated method stub
		System.out.println("Has parado el automobil, recuerda echar el freno de mano.");
	}

	/* (non-Javadoc)
	 * @see com.ipartek.pruebas.interfaces.DriveableP2#accelerate(float)
	 */
	@Override
	public float accelerate(float acc) {
		// TODO Auto-generated method stub
		System.out.println("Estas acelerando, ten precaucion.");
		return 0;		
	}

	/* (non-Javadoc)
	 * @see com.ipartek.pruebas.interfaces.DriveableP2#turn(int)
	 */
	@Override
	public boolean turn(int dir) {
		// TODO Auto-generated method stub
		if (dir == 0)
			System.out.println("Giro a la derecha");
		else
			System.out.println("Giro a la izquierda");
		return false;
	}

	@Override
	public String toString() {

		return "Matricula: " + this.matricula + ", " +  super.toString();
	}

	@Override
	public int compareTo(AutomobilP2 o) {
		
		if (this.potencia < o.getPotencia())
			return -1;
		else if (this.potencia == o.getPotencia())
			return 0;
		else 
			return 1;
	}
	
/*	@Override
	*//**
	 * Devolvera 1 en caso de que la potencia sea menor, 0 si es igual y 1 si es mayor
	 *//*
	public int compareTo(AutomobilP2 o) {
		// TODO Auto-generated method stub
		AutomobilP2 automobil = (AutomobilP2)o; 
		if (this.potencia < automobil.getPotencia())
			return -1;
		else if (this.potencia == automobil.getPotencia())
			return 0;
		else 
			return 1;
	}	*/

}
